package com.hyz.service.permission;

import com.hyz.model.dto.ApprovalResultRequest;
import com.hyz.model.vo.AssetMaintenanceResponse;
import com.hyz.model.vo.AssetRetirementResponse;
import com.hyz.model.vo.AssetSecondmentResponse;
import org.springframework.web.bind.annotation.RequestBody;
import pojo.ResponseResult;

import java.util.List;

/**
 * @author HGD
 * @date 2022/10/10 15:44
 */
public interface OperationsService {
    /**
     * 运维人员获取资产借调申请
     *
     * @return 资产借调申请
     */
    ResponseResult<List<AssetSecondmentResponse>> opGetAssetSecondments();

    /**
     * 运维人员审批资产借调申请
     *
     * @param request 资产借调申请id，审批结果
     * @return 资产借调申请
     */
    ResponseResult<List<AssetSecondmentResponse>> opUpdateAssetSecondments(ApprovalResultRequest request);

    /**
     * 维修人员获取维修申请
     *
     * @return 维修申请
     */
    ResponseResult<List<AssetMaintenanceResponse>> opGetAssetMaintenance();

    /**
     * 维修人员审批维修申请
     *
     * @param request 维修申请id 结果
     * @return 维修申请
     */
    ResponseResult<List<AssetMaintenanceResponse>> opUpdateAssetMaintenance(@RequestBody ApprovalResultRequest request);

    /**
     * 维修人员获取报废申请
     *
     * @return 报废申请
     */
    ResponseResult<List<AssetRetirementResponse>> opGetAssetRetirement();

    /**
     * 维修人员审批报废申请
     *
     * @param request 审批结果
     * @return 报废申请
     */
    ResponseResult<List<AssetRetirementResponse>> opUpdateAssetRetirement(ApprovalResultRequest request);
}
